BPMN 2.0 标准对于各方都是一个好东西。最终用户不用担心会绑死在供应商提供的专有解决方案上。 框架,特别是 Activiti 这样的开源框架,可以提供相同功能 (甚至是更好的实现),足以和大的供应商媲美。 按照BPMN 2.0 标准,从大供应商的解决方案迁移到 Activiti 只会经过一个简单而平滑的过程。
标准不好的一点是,它常常是不同公司之间大量讨论和妥协的结果。 (而且通常是愿景)。作为开发者去阅读流程定义的 BPMN 2.0 XML 时,有时会感觉用这种结构和方法去做事太麻烦了。 因此 Activiti 把简化开发作为最优先的事情,我们会使用一些被称为 'Activiti BPMN 扩展'的功能。这些扩展是新的结构或方法来简化对应的结构,它们并不属于 BPMN 2.0 规范。
虽然 BPMN 2.0 规范清楚的指明了如何开发自定义扩展, 但是我们还要确认一下几点:
因此无论是是否想要使用自定义扩展,这都取决于你。很多因素会影响决定这个决定(图形编辑器,公司策略,等等)。只是因为我们相信标准里的一些功能可以更简单或更高效,所以才决定提供自定义扩展。请对扩展给予我们(正面或负面)的评价, 或者是对自定义扩展的心想法。 说不定有一天你的想法就会加入到规范中